from dataclasses import dataclass
from dataclasses_json import DataClassJsonMixin
from typing import Dict, List
from MelodieFuncFlow import *


@dataclass
class TableCell(DataClassJsonMixin):
    row: int
    column: int
    text: str


@dataclass
class Table(DataClassJsonMixin):
    cells: List[TableCell]


@dataclass
class DocInfo(DataClassJsonMixin):
    name: str
    hash: str
    created_at: float
    modified_at: float
    last_access: float
    tables: List[Table]
    paragraphs: List[str]


@dataclass
class Finding(DataClassJsonMixin):
    file: DocInfo
    paragraphs: List[str]
    # cells: List[TableCell]
